package com.ls.service;


import com.ls.dto.UserDto;
import com.ls.pojo.User;
import com.ls.utils.Status;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpSession;
import java.util.List;

/**
 * (TUser)表服务接口
 *
 * @author makejava
 * @since 2021-03-09 11:45:49
 */
public interface UserService {

    /**
     * 添加用户
     * @param userDto
     * @return
     */
    Boolean insert(UserDto userDto);

    /**
     * 修改用户
     * @param userDto
     * @return
     */
    Boolean update(UserDto userDto);

    /**
     * 修改密码
     * @param userDto
     * @return
     */
    Boolean updPwd(UserDto userDto);
    /**
     * 删除用户
     * @param id
     * @return
     */
    Boolean delete(Integer id);

    /**
     * 查询所有用户
     * @return
     */
    List<User> queryAll();

    /**
     * 通过id查询用户
     * @param id
     * @return
     */
    User getUserById(Integer id);

    /**
     * 通过用户名查询用户
     * @param userDto
     * @return
     */
    User getUser(UserDto userDto);

    /**
     * 判断验证码是否正确
     * @param code
     * @param captcha
     * @return
     */
    Boolean codeIsTrue(String code,String captcha);

    /**
     * 验证登录
     * @param userDto
     * @return
     */
    Status login(UserDto userDto, HttpSession session);

    /**
     * 添加用户
     * @param userDto
     * @return
     */
    Status insertResult(UserDto userDto);

    /**
     * 修改头像
     * @param file
     * @param session
     * @return
     */
    Status uploadImage(MultipartFile file,HttpSession session);
}
